<?php
    $item_menu[0] = 7; 
    $item_menu[1] = 1;  

    $title = 'Importar Usuarios';
	include('header.php');


	if (!isset($_SESSION["admin"])) {redirect("login.php");	exit(); }

    $titulo         = 'Importación de Usuarios';    
    
	if(!empty($_SESSION['Msg'])) {
		echo '<center><div style="width:90%;height:30px;background-color:lightblue;border:2px solid blue;font-size:16px;font-weight;bold;text-align:center;margin-top:5px;padding-top:5px;color:blue;">';
		echo $_SESSION['Msg']."</div></center>";
		$_SESSION['Msg']='';
	}

?>

<html>
<head>
	<link href="<?php echo ADMIN;?>css_admin.css" rel="stylesheet" type="text/css"/>
    <script src="<?php echo URL;?>/js/ui/development-bundle/jquery-1.7.2.js"></script>
    <script type="text/javascript" src="<?php echo URL;?>/js/ui/js/jquery-ui-1.8.21.custom.min.js"></script>    
	<script type="text/javascript" src="<?php echo URL;?>/js/jquery-validation-1.9.0/jquery.validate.js"></script>
    <script type="text/javascript" src="<?php echo URL;?>/js/jquery-validation-1.9.0/localization/messages_es.js"></script>
	<link rel="stylesheet" href="<?php echo URL;?>/css/formularios.css" type="text/css" media="screen" />
</head>
<body style='padding:0px;'>

<?php

	// ----------------------- Obtengo grupos activos
    $cond 	 = "select * from grupos where activo='1'";
	$rs 	 = $db->Execute($cond);
	$Grupos = $rs->GetRows();
    
	if (!empty($_FILES) ) {

		if ($_FILES['archivo']['size']=0 or $_FILES['archivo']['type']!='text/plain') {
			echo '<center><div style="width:90%;height:30px;background-color:lightred;border:2px solid red;font-size:16px;font-weight;bold;text-align:center;margin-top:5px;padding-top:5px;color:red;">';
			echo "ERROR en el archivo de Médicos. NO se guardaron los cambios.</div></center>";
			die();	
		}
		if ($_FILES['codigos']['size']=0 or $_FILES['codigos']['type']!='text/plain') {
			echo '<center><div style="width:90%;height:30px;background-color:lightred;border:2px solid red;font-size:16px;font-weight;bold;text-align:center;margin-top:5px;padding-top:5px;color:red;">';
			echo "ERROR en el archivo de Códigos Administrativos. NO se guardaron los cambios.</div></center>";
			die();	
		}


		//-------------------------------------------------------------------------------------------------------
		//                                                          Importo Medicos
		//-------------------------------------------------------------------------------------------------------
		// Subi un archivo válido y no vacio
		$ubicacion = $_SERVER['DOCUMENT_ROOT'].INST_DIR.'/archivos/importacion/';

		$archivo = date("Y-m-d").'-'.$_FILES['archivo']['name'];
		if (! move_uploaded_file ($_FILES['archivo']['tmp_name'], $ubicacion.$archivo)) {	echo "error al subir el archivo";die();	}
		//echo "Archivo enviado: ".$ubicacion.$archivo."<br>";
		$archivo = $ubicacion.$archivo;

		$fd = fopen ($archivo, "r"); // opening the file in read mode
		$usuarios_importados = $i = 0;
		while (($buffer = fgets($fd, 4096)) !== false) {
			if ($i > 0) {
				$reg = explode("|",$buffer);
				// CUIT, MATR.NAC., MATR.PROV, APELLIDO y NOMBRE, TELEFONO1, TELEFONO2,COD.POSTAL,LOCALIDAD,MAIL1,MAIL2,MAIL3
				// CUIT = USERNAME
				$data['username'] 	   = trim(str_replace("'","",trim($reg['0']) ) );
				$data['matri_nac']     = str_replace("'","",trim($reg['1']) );
				$data['matri_prov']    = str_replace("'","",trim($reg['2']) );
				$data['apellido']  	   = str_replace("'","",trim($reg['3']) );
				$data['telefono1']     = str_replace("'","",trim($reg['4']) );
				$data['telefono2']     = str_replace("'","",trim($reg['5']) );
				$data['codigo_postal'] = str_replace("'","",trim($reg['6']) );
				$data['localidad']     = str_replace("'","",trim($reg['7']) );
				$data['email1']  	   = str_replace("'","",trim($reg['8']) );
				$data['email2']        = str_replace("'","",trim($reg['9']) );
				$data['email3']        = str_replace("'","",trim($reg['10']) );
				$data['activo']        = 1;


				$sql = "select * from usuarios where username='{$data['username']}'";
				$rs  = $db->SelectLimit($sql,1);
				$Existe = $rs->FetchRow();

				if (!empty($Existe)) {
					$data['id']    = $Existe['id'];
					if (empty($Existe['clave'])) {
						$data['clave'] = md5($data['username']);	
					} else {
						$data['clave'] = $Existe['clave'];	
					}
					
					//-------------------Elimino los grupos de pertenencia de este usuario
					$ok  = $db->Execute("delete from usuarios_grupos where usuario_id = '{$data['id']}'");

				} else {
					//----- No existe el usuario, 
					$data['id'] = 0;
					$data['clave'] = md5($data['username']);
				}

				$ok = $db->Replace('usuarios', $data,'id', $autoquote = true); 
				if ($ok) { $usuarios_importados++; }

				// Le creo la relacion usuario/grupo
				if ($data['id']==0){
					$grupo['usuario_id'] = $db->Insert_ID();	
				} else {
					$grupo['usuario_id'] = $data['id'];
				}
				if ($grupo['usuario_id']<1) {pr($data);}
				$grupo['id']       = 0;
				$grupo['grupo_id'] = $_POST['grupo'];
				$ok = $db->Replace('usuarios_grupos', $grupo,'id', $autoquote = true); 

			} 
			$i++;

		}
		$i--;
		fclose ($fd);               // Closing the file pointer
		echo "<h1>Médicos procesados</h1><br>";
		echo "<h2>Total de Registros: $i</h2><br>";		
		echo "<h2>Importados Correctamente: $usuarios_importados</h2><br>";		


		//-------------------------------------------------------------------------------------------------------
		//                                                          Importo Codigos Administrativos
		//-------------------------------------------------------------------------------------------------------
		// Subi un archivo válido y no vacio
		$data = array();
		$archivo = date("Y-m-d").'-'.$_FILES['codigos']['name'];
		if (! move_uploaded_file ($_FILES['codigos']['tmp_name'], $ubicacion.$archivo)) {	echo "error al subir el archivo";die();	}
		//echo "Archivo enviado: ".$ubicacion.$archivo."<br>";
		$archivo = $ubicacion.$archivo;

		$fd = fopen ($archivo, "r"); // opening the file in read mode
		$codigos_importados = $i = 0;
		$username = '';
		while (($buffer = fgets($fd, 4096)) !== false) {
			if ($i > 0) {
				$reg = explode("|",$buffer);
				// CUIT,CODIGO,NOMBRE
				// CUIT = USERNAME

				$data['id']       = 0;
				$data['username'] = trim(str_replace("'","",trim($reg['0']) ) );
				$data['codigo']   = str_replace("'","",trim($reg['1']) );
				$data['nombre']   = str_replace("'","",trim($reg['2']) );
				
				if ($data['username']!=$username) {
					$username = $data['username'];
					//-------------------Elimino los codigos administrativos de este usuario
					$ok  = $db->Execute("delete from usuarios_codigos where username = '{$data['username']}'");
					//pr($data);
				}
				
				$ok = $db->AutoExecute('usuarios_codigos',$data,'INSERT');
				if ($ok) { $codigos_importados++; }
			} 
			$i++;

		}
		$i--;
		fclose ($fd);               // Closing the file pointer
		echo "<br><h1>Codigos Administrativos procesados</h1><br>";
		echo "<h2>Total de Registros: $i</h2><br>";		
		echo "<h2>Importados Correctamente: $codigos_importados</h2><br>";		

		die();


	}
	


?>
<html>
<head>
<link href="<?php echo ADMIN;?>css_admin.css" rel="stylesheet" type="text/css"/>
</head>
<body style="margin:20px;">
<h2>Importación de Usuarios</h2>

<form action='importar_usuarios.php' method='post' enctype="multipart/form-data">
<table>

	<tr>
		<td>Grupo por Defecto:</td>
		<td>
			<select name='grupo'>
			<?php foreach($Grupos as $g){ ?>
				<option value='<?php echo $g['id'];?>'><?php echo $g['nombre'];?></option>
			<?php }	?>
			</select>
		</td>
	</tr>
	<tr><td colspan='2' ><br><br></td></tr>

	<tr>
		<td colspan='2' style='border:1px solid #333;margin:10px;background:#ececec;'>
			<b>Formato de Archivo de Médicos (fcarcsoc.txt)</b>
			<pre style="font-size:10px;">CUIT|MATR.NAC.|MATR.PROV|APELLIDO y NOMBRE|TELEFONO1|TELEFONO2|COD.POSTAL|LOCALIDAD|MAIL1|MAIL2|MAIL3</pre>
		</td>
	</tr>

	<tr>
		<td>Archivo de Médicos:</td>
		<td>
			<input type='file' name='archivo'>
		</td>
	</tr>
	<tr><td colspan='2' ><br><br></td></tr>
	<tr>
		<td colspan='2' style='border:1px solid #333;margin:10px;background:#ececec;'>
			<b>Formato de Archivo de Códigos Administrativos (fcarccad.txt)</b>
			<pre style="font-size:10px;">CUIT|CODIGO|NOMBRE</pre>
		</td>
	</tr>


	<tr>
		<td>Archivo de Códigos Administrativos:</td>
		<td>
			<input type='file' name='codigos'>
		</td>
	</tr>
	<tr><td colspan='2' ><br><br></td></tr>
	<tr>
		<td colspan='2' align='center'>
			<input type='submit' value='Comenzar Proceso de Importación' style='padding:10px;'>
		</td>
	</tr>

</table>
</form>